/**
 * 文件名称:  IBaseCarService.java
 * 文件序号:  序号
 * 内容描述:  文件简单描述，多行换行书写
 * 版权声明:  山东鸿蝶信息技术有限公司
 * 创建用户:  zhangkai
 * 创建日期:  2017/2/27 14:16
 * 修改用户:  无
 * 修改日期:  无
 * 修改说明:  无
 * 文件版本:  V1.0
 * 文件路径:
 */
package com.hongdee.crm.base.service;

import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.util.List;
import java.util.Map;

/**
 * 名  称:IBaseCarService
 * 类  型: interface
 * 描  述: 用一句话描述类的作用
 * 路  径:com.hongdee.crm.base.service
 * 作  者:zhangkai
 * 日  期:2017/2/27 14:16
 */
public interface IBaseCarService {
    /**
     * 分页查询基盘车辆
     *
     * @param start
     * @param limit
     * @param params
     * @param uid
     * @return
     */
    Map page(String start, String limit, Map params, String uid) throws Exception;

    /**
     * 区间客户基盘数
     *
     * @param endDate
     * @return
     */
    Map baseCount(String endDate, String uid, String SA,String companyId) throws Exception;

    public Map baseYearAgoCount(String endDate, String uid, String SA,String companyId) throws Exception;

    /**
     * 区间增长数量
     *
     * @param endDate
     * @param uid
     * @return
     * @throws Exception
     */
    public Map baseGrowCount(String endDate, String uid, String SA,String companyId) throws Exception;

    /**
     * 区间增长率
     *
     * @param endDate
     * @param uid
     * @return
     * @throws Exception
     */
    public Map baseGrowLv(String endDate, String uid, String SA,String companyId) throws Exception;


    /**
     * 区间客户流失数量
     *
     * @param endDate
     * @param uid
     * @return
     * @throws Exception
     */
    public Map lostCount(String endDate, String uid, String SA,String companyId) throws Exception;

    /**
     * @Name: 区间客户流失数量详情
     * @Author: Liu XiaoLong
     * @Date: 2017/9/18 14:59
     * @Remark:
     */
    public Map lostCountDetail(String endDate, String uid, String SA,String companyId,String start,String limit) throws Exception;


    /**
     * 区间客户流失率
     *
     * @param endDate
     * @param uid
     * @return
     * @throws Exception
     */
    public Map lostLv(String endDate, String uid, String SA,String companyId) throws Exception;

    /**
     * 年度活跃客度
     *
     * @param endDate
     * @param uid
     * @return
     * @throws Exception
     */
    public Map activeLv(String endDate, String uid, String SA,String companyId) throws Exception;

    /**
     * @return
     * @throws Exception
     * @desc 地区下拉列表
     * @author 术洪超
     */
    public List<Map> areaCombo(String uid,String companyId) throws Exception;

    /****
     * 查询全部要导出的基盘数据
     * @param params
     * @param uid
     * @return
     */
    public List<Map<String, Object>> listExport(Map params, String uid) throws Exception;

    /**
     * 将基盘数据生成Execl
     **/
    public XSSFWorkbook createExcel(List<Map<String, Object>> lists, String uid) throws Exception;


}
